package com.jy.wms.dao;

import com.jy.wms.common.base.BaseDao;
import com.jy.wms.pojo.WmsPalletSorting;
import com.jy.wms.pojo.WmsReceiptTaskPda;
import com.jy.wms.pojo.WmsReceiptTaskPdaDetailed;
import org.apache.ibatis.annotations.Param;
import java.util.List;

   /**
   * @ClassName: WmsReceiptTaskPdaMapper.java
   * @Description: TODO(这里用一句话描述这个类的作用)
   * @Author Liyi
   * @Date Thu Nov 30 10:04:14 CST 2017
   */
   public interface WmsReceiptTaskPdaMapper extends BaseDao<WmsReceiptTaskPda>{

       /**
        * 根据预期到货通知单ID查询PDA收货信息
        * @param yqid
        * @return
        */
       public WmsReceiptTaskPda getByYqid(@Param("yqid") String yqid);

       /**
        * 根据PDA收货任务主表信息查询明细列表
        * @param id
        * @return
        */
       public List<WmsReceiptTaskPdaDetailed> getDetailedById(@Param("id") Integer id);

   /**
    * 插入一条记录
    * @param entity 实体对象
    * @return int
    */
    public Integer baseInsert(@Param("WmsReceiptTaskPda") WmsReceiptTaskPda entity);

   /**
    * 插入一条记录（匹配有值的字段）
    * @param entity 实体对象
    * @return int
    */
   public Integer baseInsertSelective(@Param("WmsReceiptTaskPda") WmsReceiptTaskPda entity);

   /**
    * 删除（根据主键ID删除）
    * @param id 主键
    * @return int
    */
   public Integer baseDeleteByPrimaryKey(@Param("id") String id);

   /**
    * 删除（根据ID 批量删除）
    * @param idList 主键ID列表
    * @return int
    */
    public Integer baseDeleteBathPrimaryKeys(@Param("list") List<String> idList);

       /**
        *  删除（预期到货通知单ID列表）
        * @param idList
        * @return
        */
    public Integer baseDeleteBathPrimaryYqids(@Param("list") List<String> idList);


       /**
        * 查询（预期到货单ID查询所有PDA收货单IDs）
        * @param yqids 预期到货单IDs
        * @return User
        */
       public List<String>  baseSelectByPrimaryYqid(@Param("list") List<String> yqids);

    /**
    * 分页查询
    * @param entity 实体
    * @return List<WmsReceiptTaskPda>
    */
    public List<WmsReceiptTaskPda>  baseSelectPage(@Param("WmsReceiptTaskPda") WmsReceiptTaskPda entity);

    /**
    * 查询（根据主键ID查询）
    * @param id 主键ID
    * @return User
    */
    public WmsReceiptTaskPda  baseSelectByPrimaryKey(@Param("id") String id);

   /**
    * 查询（根据ID 批量查询）
    * @param idList 主键ID列表
    * @return list
    */
    public Integer baseSelectBathPrimaryKeys(@Param("list") List<WmsReceiptTaskPda> idList);

   /**
    *修改 （匹配有值的字段）
    * @param entity 主键ID列表
    * @return int
    */
    public Integer baseUpdateByPrimaryKeySelective(@Param("WmsReceiptTaskPda") WmsReceiptTaskPda entity);

   /**
    *修改（根据主键ID修改）
    * @param entity 主键ID列表
    * @return int
    */
    public Integer baseUpdateByPrimaryKey(@Param("WmsReceiptTaskPda") WmsReceiptTaskPda entity);

       /**
        * 根据预期到货通知单明细查询对应的码盘列表
        * @param yqdmxid 预期到货明细ID
        * @return
        */
    public List<WmsPalletSorting> getPalletSorting(@Param("yqdmxid") String yqdmxid);
}
